# 输入两个链表，找出它们的第一个公共结点。
# 思路：所谓的公共节点，就是说从这个结点开始，一直到最后的结尾，全都相同!
# 例如：12345 和7981345，公共节点是3，那么可以先将两个链表链接起来，使他们长度相同，然后如果有公共节点，必然是尾部相同的链表
# 123457981345
# 798134512345   注意看最后，都是345
# 这里的做法其实是衍生做法12345->null,7981345->null
# 链接：12345null7981345null
#      7981345null12345null
# 这里是两个指针在null之后就跳到对方的链表头去了，好处是不用额外生成链表，也不用知道链表长度


def FindFirstCommonNode(self, pHead1, pHead2):
    p1,p2 = pHead1,pHead2
    while p1!=p2:
        p1 = p1.next if p1 else pHead2
        p2 = p2.next if p2 else pHead1
    return p1